The invention relates to the field of fingerprint processing, and, more particularly, to the field of storing a database of fingerprint data and matching a new fingerprint to the database.
Fingerprint matching is a reliable and widely used technique for personal identification or verification. In particular, a common approach to fingerprint identification involves scanning a sample fingerprint or an image thereof, converting it into electrical signals, and storing the image and/or unique characteristics of the fingerprint image. The characteristics of a sample or new fingerprint may be compared to information for reference fingerprints already in storage to determine or verify a person""s identity.
Unfortunately, comparing a sample fingerprint to a large number of reference fingerprints may be prohibitively expensive and/or simply take too long. Accordingly, fingerprints are typically classified into a plurality of discrete sets and/or subsets in the form of a hierarchical tree to thereby expedite searching. For example, a common top level classification for fingerprints usually differentiates the prints into the classes of: plain whorl, plain loop, tented arch, etc. based upon broad ridge pattern types. These classes may be yet further divided into subclasses. Accordingly, a fingerprint sample to be searched, once itself classified, can be more efficiently compared to only those prints in the respective classes and subclasses of the search tree. For example, U.S. Pat. No. 5,465,303 to Levison et al. describes both the widely used Henry classification system and the Vucetich classification system.
When the quality of the original copy of a fingerprint is bad, the print may contain many local distortions of the ridge pattern which may result in incorrect orientation of the fingerprint. U.S. Pat. No. 5,140,642 to Hsu et al. is directed to a method for determining the actual position of a core point of a fingerprint based upon finding ridge flows and assigning a direction code, correcting the ridge flows, and allocating the core point based upon the corrected direction codes. Along these lines, U.S. Pat. No. 5,040,224 to Hara discloses an approach to preprocessing fingerprints to correctly determine a position of the core of each fingerprint image for later matching by minutiae patterns.
Fingerprint minutiae, the branches or bifurcations and end points of the fingerprint ridges, are often used to determine a match between a sample print and a reference print database. For example, U.S. Pat. Nos. 3,859,633 and 3,893,080 both to Ho et al. are directed to fingerprint identification based upon fingerprint minutiae matching.
U.S. Pat. No. 4,151,512 to Riganati et al. describes a fingerprint classification method using extracted ridge contour data. The ridge flow in the fingerprint pattern and minutiae data are identified and extracted from a fingerprint pattern. Topological data, identifying singularity points such as tri-radii and cores, as well as ridge flow line tracings related to those points are extracted from the ridge contour data. The extracted information is used to automatically perform classification of the fingerprint patterns and/or matching of the fingerprint pattern with patterns stored in a mass file.
U.S. Pat. No. 5,845,005 to Setlak et al., and assigned to the assignee of the present invention, discloses a significant advance in the area of fingerprint indexing and searching of a database of reference fingerprints to determine a match. In particular, index values are calculated which are generally evenly distributed and continuous over a relatively large population of individuals. The index values may be determined based upon ridge flow curvature of the fingerprints. A particularly advantageous index, called a curliness index, is disclosed and this index is based upon an aggregate of a magnitude of a rate of change of ridge direction vectors.
Other important advances have also been made in the area of integrated circuit fingerprint sensors, as disclosed, for example, in U.S. Pat. Nos. 5,828,773 and 5,862,248, both assigned to the assignee of the present invention. The disclosed sensors are based upon generating an electric field which can sense the ridges of a fingerprint despite contamination, skin surface damage, and other factors. The sensor is relatively compact and rugged.
Despite improvements in sensor technology and in fingerprint enrollment and matching approaches, processing is still computationally intensive thus limiting widespread use of fingerprint sensing. In addition, sensing typically requires a relatively large sensor area to ensure accurate results. The sensor size has an important bearing on the sensor cost, especially for the new class of integrated circuit fingerprint sensors.
In view of the foregoing background, it is therefore an object of the invention to provide a method and fingerprint sensor apparatus for enrolling and/or matching a fingerprint, and to reduce computations and/or permit the sensing surface to be relatively small.
This and other objects, features and advantages in accordance with the present invention are provided in one embodiment by a method for generating fingerprint data for a fingerprint area larger than a sensing area of a fingerprint sensor. The method preferably comprises enrolling a fingerprint of a user by generating a plurality of fingerprint data sets responsive to placing a finger of a user on a sensing area of the fingerprint sensor a plurality of times with the finger being slightly repositioned on successive placements. The method also preferably includes processing the plurality of fingerprint data sets to generate a composite fingerprint data set over an area of the fingerprint larger than the sensing area of the fingerprint sensor. Of course, the method may also be extended to the matching of a new fingerprint to an enrolled fingerprint based upon at least one sensing of the new fingerprint and the composite fingerprint data set.
The step of matching may include comparing a predetermined number of sensings of the new fingerprint with the composite fingerprint data set to achieve a desired performance, such as a desired false reject rate, and/or a desired false acceptance rate. The step of generating a plurality of data sets preferably comprises generating a plurality of fingerprint feature location data sets. The feature location data sets may comprise at least one of a plurality of minutiae location data sets, a plurality of skin pore location data sets, and a plurality of feature location data sets relating to fingerprint ridge flows.
The step of processing may comprise determining a core location for each data set. In addition, the step of processing may comprise accounting for distortion of the finger surface in the plurality of data sets. For example, the step of accounting for distortion preferably comprises calculating centroids of fingerprint feature locations relative to a reference frame or location, such as the fingerprint core position.
The step of generating the plurality of fingerprint data sets may preferably comprise generating a predetermined number of fingerprint data sets based upon the predetermined number of finger placements within a predetermined time. For example, the predetermined number may be in a range of about 2 to 5.
Another aspect of the invention relates to the fingerprint sensor apparatus. The fingerprint sensor apparatus preferably includes a fingerprint sensing area, and an enrollment circuit for enrolling a fingerprint of a user by generating a plurality of fingerprint data sets responsive to placing a finger of a user on the fingerprint sensing area a plurality of times with the finger being slightly repositioned on successive placements. The enrollment circuit also preferably processes the plurality of fingerprint data sets to generate a composite fingerprint data set over an area of the fingerprint larger than the fingerprint sensing area.
The processor preferably further comprises a match determining circuit for determining a match between a new fingerprint and an enrolled fingerprint based upon at least one sensing of the new fingerprint and the composite fingerprint data sets. The match determining circuit may include a comparor to compare a predetermined number of sensings of the new fingerprint with the composite fingerprint data set to achieve a desired performance, such as a at least one of a false reject rate and a desired false acceptance rate.
The enrollment circuit preferably generates a plurality of fingerprint feature location data sets. The feature location data sets may be minutiae location data sets, skin pore location data sets, and/or feature location data sets relating to fingerprint ridge flows.
The enrollment circuit preferably determines a core location for each data set, and accounts for distortion of the finger surface in the plurality of data sets. The circuit may account for distortion by calculating centroids of fingerprint feature locations relative to a reference frame or location, such as the fingerprint core.